Field of the Invention
Embodiments presented in this disclosure generally relate to object-oriented programming and, more particularly, to a universal URL scheme object for use across a plurality of host applications.
Description of the Related Art
Generally speaking, a Uniform Resource Locator (“URL”) is a character string that identifies a network resource. Such a URL generally includes a scheme name, followed by a colon, two slashes, and then one or more parameters depending on the scheme under which the URL is composed. For example, a Hypertext Transfer Protocol (“HTTP”) URL could include the scheme name of “http”, followed by a colon, two slashes, and then the address (i.e., hostname, domain name, port information, etc.) of the network resource. Such a URL could be used, for instance, to request a specific network resource from a remote web server. As another example, a File Transfer Protocol (“FTP”) URL could include the scheme name of “ftp”, followed by a colon, two slashes, and then address information of the network resource (e.g., a FTP server). Such a URL could be used to establish an FTP session to an FTP server.
In addition to identifying a network resource, URLs may also be used to pass data to the network resource. For instance, a particular URL could include a question mark character, followed by one or more parameter names and parameter values, separated by an ampersand. For example, such a URL could be “http://localhost/example.aspx?param1=A&param2=B”, where the parameter “param1” is assigned the value of “A” and the parameter “param2” is assigned the value of “B”. Such a URL could be used, for instance, to request a specific network resource from a remote web server and to pass particular parameters to the specific network resource. As another example, a URL composed according to a second scheme could specify a command and then one or more parameters separated by forward slashes, in a manner that's analogous to a function call. For example, such a URL could be “tt4cmd://command/param1/param2”, where the string “command” represents the command being invoked, and the strings “param1” and “param2” represent parameters being passed to the command.